CVE-2026-54516
jackson-databind: Renamed @JsonIgnore'd setters can deserialize via private fields
Description
jackson-databind contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor. From 2.21.0 until 2.21.4 and 3.1.4, POJOPropertiesCollector._renameProperties() allows a property with @JsonProperty("renamed") on the getter and @JsonIgnore on the setter to be renamed rather than dropped. With MapperFeature.INFER_PROPERTY_MUTATORS enabled (default), the private backing field is retained; during deserialization BeanDeserializerFactory.addBeanProps() sees hasField()==true, builds a FieldProperty, and makes the backing field writable. An attacker supplying the renamed JSON key writes the backing field directly, bypassing the @JsonIgnore on the setter. This vulnerability is fixed in 3.1.4.
INFO
Published Date :
June 23, 2026, 8:48 p.m.
Last Modified :
June 23, 2026, 8:48 p.m.
Remotely Exploit :
No
Source :
GitHub_M
Solution
- Update jackson-databind to version 3.1.4 or later.
- Review configurations for MapperFeature.INFER_MUTATORS.
- Test application for unexpected field access.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-54516 vulnerability anywhere in the article.